iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 18
1
Modern Web

JavaScript 之旅系列 第 18

JavaScript 之旅 (18):Array method - flat & flatMap

  • 分享至 

  • xImage
  •  

本篇介紹 ES2019 (ES10) 提供的 :Array method flat()flatMap()

Array.prototype.flat() 的 flat 其實是「flattens」的簡寫,有展開、攤平的意思。

但攤平陣列是什麼意思?直接來看簡單的範例:

let array = [[1, 2], [3, 4], [5, 6]];

console.log(array.flat());
// [1, 2, 3, 4, 5, 6]

flat() 負責把二維的巢狀陣列攤平變成一維陣列。

那如果陣列內,同時有二維陣列和三維陣列呢?該怎麼處理?這就要看你的需求了。

假設你只想攤平一層,只要直接使用 flat() 即可,如下範例:

let array = [[1, 2], [3, 4], [[5, 6]] ];

console.log(array.flat());
// [1, 2, 3, 4, [5, 6]]

如果想全部攤平,就要使用 flat() 的參數 depth

let array = [[1, 2], [3, 4], [[5, 6]] ];

console.log(array.flat(2));
// [1, 2, 3, 4, 5, 6]

depth 參數代表的是指定攤平的深度。

資料來源


上一篇
JavaScript 之旅 (17):String method - trimStart & trimEnd
下一篇
JavaScript 之旅 (19):String.prototype.matchAll()
系列文
JavaScript 之旅30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言